% Ejemplo para eliminar detalles de la señal usando wavelets enviado por Pablo Etchepareborda

%Está bueno el problema. Ahora no tengo para escuchar pero se podría
%probar con wavelets, la idea es parecida a lo que tiró Hernán de las
%sinusoides+residuos. Es código de Matlab. Es muy burdo esto, pero como
%para probar la idea está bien creo.

x=wavread('entrada.wav');
x=x(:,1); % Trabajo un solo canal
escalas = 5;
detalles_borrados = 2; % escalas de detalles eliminados, tiene que ser menor a 'escalas'
[c l]=wavedec(x,escalas,'db5');
c(end-sum(l(end-detalles_borrados:end-1))+1:end) = zeros(sum(l(end-detalles_borrados:end-1)),1);
X=waverec(c,l,'db5');
wavwrite(X,'salida.wav');

%detalles_borrados es la cantidad de escalas de detalles que tiro a la
%basura. O sea, se le sacan detalles a la señal. Quizás haya que
%aumentar las variables 'escalas' y 'detalles_borrados' para que
%empiece a hacer algo.
%
%Saludos
%Pablo
